package com.lesso.lzh.sunflower.domain.repository;

import com.baomidou.mybatisplus.plugins.Page;
import com.lesso.lzh.sunflower.model.EmployeeAttendanceRule;
import com.lesso.lzh.sunflower.pojo.dto.EmployeeAttendanceRuleQueryDTO;
import com.lesso.lzh.sunflower.pojo.vo.EmployeeAttendanceRuleVO;

/**
 * EmployeeAttendanceRuleRepository
 *
 * @author zqz
 * @since 2025-07-04
 */
public interface EmployeeAttendanceRuleRepository {
    Long save(EmployeeAttendanceRule rule);

    Page<EmployeeAttendanceRuleVO> getPageList(EmployeeAttendanceRuleQueryDTO dto);

    Page<EmployeeAttendanceRuleVO> getCustomPageList(EmployeeAttendanceRuleQueryDTO dto);

    void removeById(Long id);

    EmployeeAttendanceRule selectById(Long id);

    void update(EmployeeAttendanceRule rule);
}